import request from '../../utils/request.js'

Page({

  /**
   * 页面的初始数据
   */
  data: {
    //轮播图数据
    banners: [],
    recommendList: [],
    rankList: []
  },

  // 每日推荐列表
  async handleTodayRecommend(){
    wx.navigateTo({
      url: '/pages/todayRecommend/todayRecommend',
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: async function(options) {

    //banner图片
    const bannerData = await request('/banner', {
      type: 2
    })
    this.setData({
      banners: bannerData.banners
    })

    //推荐歌曲列表
    const recommendData = await request('/personalized')
    this.setData({
      recommendList: recommendData.result
    })

    //排行榜推荐
    const reqIds = [4, 5, 6, 7]
    const reqRankList = []
    const rankData = []
    reqIds.forEach(async(reqId) => {
      reqRankList.push(request('/top/list', {
        idx: reqId
      }))
    })
    //所有排行榜接口都返回成功才渲染数据
    await Promise.all(reqRankList).then((value) => {
      value.forEach((rank) => {
        const {
          playlist
        } = rank
        //排行榜音乐列表
        const tracks = playlist.tracks.splice(0, 3).map((track) => {
          return {
            id: track.al.id,
            name: track.al.name,
            picUrl: track.al.picUrl
          }
        })
        rankData.push({
          id: playlist.id,
          name: playlist.name,
          tracks
        })
      })
    })
    this.setData({
      rankList: rankData
    })

  },


  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {

  }
})